﻿using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Serialization;

namespace FrameWorkSongDemo
{
    public class InspectorShowDemo : MonoBehaviour
    {
        [Tooltip("变量注释")] //注释
        public string Variate;
        [Header("可以用于介绍变量和区分变量类型")]
        [Space]//空格
        [Space]//空格
        [ImageEffectAfterScale]
        [Range(0, 1)]//范围
        public int Range;
        [SerializeField]//私有变量显示
       // float m_JumpPower = 12f;
        [HideInInspector] //表示将原本显示在面板上的序列化值隐藏起来。
        public string Hide;
        [SerializeField]//表示将原本不会被序列化的私有变量和保护变量可以序列化,显示在面板上
        string Serialize;
        [SerializeField, Range(0, 5)]//如果您想要设置的 SerializeField 和范围，如描述属性。
        int count;
        [SerializeField, Range(0, 5)]//属性适用于立即定义的所有变量。例如，如果在一个声明中定义多个变量
        int count3, count4;
        [SerializeField, Range(0, 5)]//以及适合数组，是适用于所有的变量，使其包含。
        int[] counts;
        [SerializeField, TooltipAttribute("说明文")]//如果鼠标光标是在字段上，显示的说明文本。   
        int count5;
        [SerializeField, Space(15)]//设置字段和字段之间的空间。
        int count6;
        [SerializeField, HeaderAttribute("标题")]//设置标题，就是字段的头部
        int count7;
        [SerializeField, MultilineAttribute(2)]//设置多行输入的文本字段。
        string message1;
        [SerializeField, TextAreaAttribute(2, 5)]//设置多行输入的文本字段。您可以设置的最大值和最小值的行数。
        string message2;
        [HideInInspector]
        public int count8;
        [NonSerialized]//序列化并不妨碍您将从检查器中消失。  
        public int count9;
        public float first;
        [FormerlySerializedAs("first")]
        public float second;
        //[RequireComponent(typeof(Rigidbody))]
        //public void classAttributeSampl() {
        private void Update()
        {
            if (Input.GetKeyDown(KeyCode.A))
            {
                gameObject.AddComponent<Rigidbody>();
            }
        }
    }

    [RequireComponent(typeof(Rigidbody))]
    public class AttributeSample : MonoBehaviour {
         void Start()
        {
            Debug.Log("访问");
        }
    }
}


